/**
 * <p>Copyright (c) 2011 深圳市鹏途信息技术有限公司 </p>
 * <p>				   All right reserved. 		     </p>
 * 
 * <p>项目名称 ： 	东莞交通工程质量监督综合业务系统        </p>
 * <p>创建者   :	liuyang 
 * 
 * <p>描   述  :   Received.java for com.pengtu.entity.admin    </p>
 * 
 * <p>最后修改 : $: 2011-7-28-上午9:18:56 v 1.0.0	 liuyang   $     </p>
 * 
 */

package com.pengtu.entity.admin;

import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Transient;

import org.hibernate.annotations.Where;

import com.pengtu.entity.IdEntity;
import com.pengtu.entity.app.Attachment;

/**
 * 
 * Received
 * 
 * 2011-7-28 上午9:18:56
 * 
 * @version 1.0.0
 * 
 */
@Entity
@Table(name = "T_APP_RECEIVED")
public class Received extends IdEntity {

	/**
	 * serialVersionUID:TODO
	 * 
	 * @since 1.0.0
	 */

	private static final long serialVersionUID = 1L;
	private String refeNum; // 发文字号
	private String officeNum; // 公文自编号
	private String secret; // 密级程度
	private String crash; // 紧急程度
	private String title; // 文件标题
	private String keywords; // 主题词
	private String source; // 公文来源
	private String content; // 内容简介
	private String handle; // 拟办意见
	private String leader; // 领导意见
	private String auditor; // 审核人
	private Date auditDate; // 审核日期
	private String verifier; // 复核人
	private Date verifyDate; // 复核日期
	private String handlerIdea; // 承办人
	private Date handlDate; // 承办日期
	private String undertake; // 承办意见
	private String type; // 来文分类
	private String staffs; // 拟办人员
	private String remark; // 备注
	private Date publishDate; // 发布日期
	private String status; // 公文状态
	private String acctPetitionFile;// 附件

	private Set<Attachment> attachmentSet =  new HashSet<Attachment>(0);

	private String taskId; // 任务ID

	@Column(name = "REFENUM")
	public String getRefeNum() {
		return refeNum;
	}

	public void setRefeNum(String refeNum) {
		this.refeNum = refeNum;
	}

	@Column(name = "OFFICENUM")
	public String getOfficeNum() {
		return officeNum;
	}

	public void setOfficeNum(String officeNum) {
		this.officeNum = officeNum;
	}

	@Column(name = "SECRET")
	public String getSecret() {
		return secret;
	}

	public void setSecret(String secret) {
		this.secret = secret;
	}

	@Column(name = "CRASH")
	public String getCrash() {
		return crash;
	}

	public void setCrash(String crash) {
		this.crash = crash;
	}

	@Column(name = "TITLE")
	public String getTitle() {
		return title;
	}

	public void setTitle(String title) {
		this.title = title;
	}

	@Column(name = "KEYWORDS")
	public String getKeywords() {
		return keywords;
	}

	public void setKeywords(String keywords) {
		this.keywords = keywords;
	}

	@Column(name = "SOURCE")
	public String getSource() {
		return source;
	}

	public void setSource(String source) {
		this.source = source;
	}

	@Column(name = "CONTENT")
	public String getContent() {
		return content;
	}

	public void setContent(String content) {
		this.content = content;
	}

	@Column(name = "HANDLE")
	public String getHandle() {
		return handle;
	}

	public void setHandle(String handle) {
		this.handle = handle;
	}

	@Column(name = "LEADER")
	public String getLeader() {
		return leader;
	}

	public void setLeader(String leader) {
		this.leader = leader;
	}

	@Column(name = "AUDITOR")
	public String getAuditor() {
		return auditor;
	}

	public void setAuditor(String auditor) {
		this.auditor = auditor;
	}

	@Column(name = "AUDITDATE")
	public Date getAuditDate() {
		return auditDate;
	}

	public void setAuditDate(Date auditDate) {
		this.auditDate = auditDate;
	}

	@Column(name = "VERIFIER")
	public String getVerifier() {
		return verifier;
	}

	public void setVerifier(String verifier) {
		this.verifier = verifier;
	}

	@Column(name = "VERIFYDATE")
	public Date getVerifyDate() {
		return verifyDate;
	}

	public void setVerifyDate(Date verifyDate) {
		this.verifyDate = verifyDate;
	}

	@Column(name = "HANDLER")
	public String getHandlerIdea() {
		return handlerIdea;
	}

	public void setHandlerIdea(String handlerIdea) {
		this.handlerIdea = handlerIdea;
	}

	@Column(name = "HANDLDATE")
	public Date getHandlDate() {
		return handlDate;
	}

	public void setHandlDate(Date handlDate) {
		this.handlDate = handlDate;
	}

	@Column(name = "UNDERTAKE")
	public String getUndertake() {
		return undertake;
	}

	public void setUndertake(String undertake) {
		this.undertake = undertake;
	}

	@Column(name = "TYPE")
	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	@Column(name = "STAFFS")
	public String getStaffs() {
		return staffs;
	}

	public void setStaffs(String staffs) {
		this.staffs = staffs;
	}

	@Column(name = "REMARK")
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@Column(name = "PUBLISHDATE")
	public Date getPublishDate() {
		return publishDate;
	}

	public void setPublishDate(Date publishDate) {
		this.publishDate = publishDate;
	}

	@Column(name = "STATE")
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	@Column(name = "ACCTPETITIONFILE")
	public String getAcctPetitionFile() {
		return acctPetitionFile;
	}

	public void setAcctPetitionFile(String acctPetitionFile) {
		this.acctPetitionFile = acctPetitionFile;
	}

	@OneToMany(cascade = CascadeType.PERSIST, fetch = FetchType.LAZY)
	@JoinColumn(name = "TABLEID")
	@Where(clause=" DELFLAG = 0")
	public Set<Attachment> getAttachmentSet() {
		return attachmentSet;
	}

	public void setAttachmentSet(Set<Attachment> attachmentSet) {
		this.attachmentSet = attachmentSet;
	}

	@Transient
	public String getTaskId() {
		return taskId;
	}

	public void setTaskId(String taskId) {
		this.taskId = taskId;
	}

}
